package com.qianxun.module.datasource1.develop.entity;

import com.qianxun.module.base.bo.OptionInfo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.experimental.Accessors;

/**
*
* @author: admin
* @date: 2019-11-27
* @version: 1.0.0
*/
@Data
@Accessors(chain = true)
public class SysFunctionRole extends OptionInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private  Integer  id;

    /**
     * 名称
     */
    private  String  name;

    /**
     * 描述
     */
    private  String  description;

    /**
     * 编码 角色编码，用于关联同一类下的所有角色，该code每3个字符表示一个角色层级，每个层级可表示999个角色类型，最多可表示10个层级；示例：001002000000000000000000000
子级角色，将拥有父级角色的所有功能访问权限
     */
    private  String  code;

    /**
     * 状态 标识角色可用状态；0：不可用 ；1：可用 ，默认可用
     */
    private  Integer  status;

    /**
     * 父角色 父角色id 默认为0 ，表示顶级角色
     */
    private  Integer  pid;

    /**
     * 乐观锁
     */
    private  Integer  revision;

    public boolean isEnable() {
        return status == 1;
    }
}
